#!/bin/bash

# ============================================
# 修复前端构建配置并重新构建
# ============================================

cd /mnt/lwy/django-vue3-admin/web

echo "=== 检查当前配置 ==="
cat .env.production 2>/dev/null || echo ".env.production 不存在"

echo ""
echo "=== 修复 .env.production ==="
# 使用相对路径，让前端通过 Nginx 代理访问后端
cat > .env.production << 'EOF'
# API 地址（生产环境）
# 使用相对路径，让前端通过 Nginx 代理访问后端
# 注意：前端代码中 API 路径已经包含 /api/，所以这里不要包含 /api/
VITE_API_URL=/

# 公共路径
VITE_PUBLIC_PATH=/

# 端口
VITE_PORT=3000

# 构建输出目录
VITE_DIST_PATH=dist
EOF

echo "新的配置："
cat .env.production

echo ""
echo "=== 重新构建前端 ==="
npm run build

echo ""
echo "=== 验证构建结果 ==="
if [ -f "dist/index.html" ]; then
    echo "✓ dist/index.html 存在"
    echo "检查构建后的 API URL 配置："
    grep -r "your-domain\|VITE_API_URL\|localhost:8000" dist/ 2>/dev/null | head -5 || echo "未找到 API URL 配置（这是正常的）"
else
    echo "✗ dist/index.html 不存在"
fi

echo ""
echo "=== 重启 Nginx ==="
sudo systemctl reload nginx

echo ""
echo "✓ 修复完成！"
echo ""
echo "现在请："
echo "1. 清除浏览器缓存（Ctrl+Shift+R 或 Cmd+Shift+R）"
echo "2. 重新访问 http://10.170.129.4"
echo "3. 尝试登录，查看浏览器开发者工具（F12）中的 Network 标签"
echo "4. 确认请求 URL 是否正确：应该是 /api/login/ 而不是 http://your-domain.com/api/api/login/"

